//引入express框架
var express = require('express');
// 引入api下的get方法

// const {get,getOne,change,add,Delete,} = require("../api/cinemas")


const {get,getOne,change,add,Delete,getdata,update,delImg,find,findInfo} = require("../api/cinemas")
// 引入端口
var router = express.Router();

// 排片、放映厅获取数据
  router.get('/getdata', async function (req, res, next) {
    const data = await getdata();
    res.send(data);
  });

//将后台数据发送到前端页面
router.get('/', async function (req, res, next) {
  const { curPage, eachPage } = req.query;
  const data = await get({ curPage, eachPage });
  res.send(data);
});

router.post('/add', async function (req, res, next) {
  const{ name, phone, address, status } = req.body;
  const data = await add ({ name, phone, address, status });
  res.send(data);
});

router.get('/getone/:_id', async function (req, res, next) {
  //解析路径
  const{_id} =req.params;
  //拿到getOne方法找到的id对应的影院，send回前台
  const data=await getOne(_id);
  res.send(data)
});

// 修改影院信息
router.patch('/change', async function (req, res, next) {
  // 从路径中获取_id参数
  const { name,phone,address,status,_id} = req.body;
  // t后台更新对应_ID的数据
  const data=await change({ name,phone,address,status,_id});
  //将true返回给前台
  res.send(data);
});

//删除影院数据
router.delete("/delete/:_id",async function (req, res, next) {
  //解析路径
  const{_id} =req.params;
  const data=await Delete(_id);
  res.send(data)
});

//上传影院图片
router.patch('/:_id', async function(req, res, next) {
  const {_id}=req.params
  //在myapp/api方法的请求体里获取，data的结构是update里的body{}里的东西
  const data=req.body;
  // update(查询条件，需要修改的数据，即修改update里body里的对象 )
  await update({_id},data); 
  // 调用update方法
  const result = await getOne({_id},data);
  // 返回到调用rp的地方
  res.send(result)
});

// 上传中的图片删除
router.delete('/:_id/imgs/:url', async function (req, res, next) {
  const { _id, url } = req.params;
  console.log('myapptouter');
  console.log( { _id, url });
  await delImg({ _id, url }); //删除完成后台数据
  const data = await getOne(_id);  //更新后台数据
  res.send(data);
});
  
// 获取查询的影院
router.get('/find', async function (req, res, next) {
  // req.params从传入参数中获取数据
  const { address, status} = req.query;
  // 通过cinemasId找到对应放映厅
  const data = await find({ address, status});
  console.log(data);
  // 将获取的放映厅数据发送到页面
  res.send(data);
});

// 模糊查询影院名
router.get('/findInfo', async function (req, res, next) {
  // 获取传输的字符串
  const {str} = req.query;
  // 通过cinemasId找到对应放映厅
  const data = await findInfo(str);
  // 将获取的放映厅数据发送到页面
  res.send(data);
});



// 暴露接口
module.exports = router;